package com.iris.live.services.data.models;

import javax.persistence.*;
import java.sql.Timestamp;

/**
 * Created by lusong on 2016/11/28.
 */
@Entity
@Table(name = "跨部门方案", schema = "live", catalog = "")
public class 跨部门方案Model {
    private Integer 编号;
    private String 许可;
    private String 年月;
    private String 车型;
    private String 项目;
    private String 结果责任部门;
    private String 行动提升方案;
    private String 启用时间;
    private String 结束时间;
    private String 负责人;
    private String 第一周落实结果;
    private String 第二周落实结果;
    private String 第三周落实结果;
    private String 第四周落实结果;
    private String 第五周落实结果;
    private Timestamp 更新时间;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "编号")
    public Integer get编号() {
        return 编号;
    }

    public void set编号(Integer 编号) {
        this.编号 = 编号;
    }

    @Basic
    @Column(name = "许可")
    public String get许可() {
        return 许可;
    }

    public void set许可(String 许可) {
        this.许可 = 许可;
    }

    @Basic
    @Column(name = "年月")
    public String get年月() {
        return 年月;
    }

    public void set年月(String 年月) {
        this.年月 = 年月;
    }

    @Basic
    @Column(name = "车型")
    public String get车型() {
        return 车型;
    }

    public void set车型(String 车型) {
        this.车型 = 车型;
    }

    @Basic
    @Column(name = "项目")
    public String get项目() {
        return 项目;
    }

    public void set项目(String 项目) {
        this.项目 = 项目;
    }

    @Basic
    @Column(name = "结果责任部门")
    public String get结果责任部门() {
        return 结果责任部门;
    }

    public void set结果责任部门(String 结果责任部门) {
        this.结果责任部门 = 结果责任部门;
    }

    @Basic
    @Column(name = "行动提升方案")
    public String get行动提升方案() {
        return 行动提升方案;
    }

    public void set行动提升方案(String 行动提升方案) {
        this.行动提升方案 = 行动提升方案;
    }

    @Basic
    @Column(name = "启用时间")
    public String get启用时间() {
        return 启用时间;
    }

    public void set启用时间(String 启用时间) {
        this.启用时间 = 启用时间;
    }

    @Basic
    @Column(name = "结束时间")
    public String get结束时间() {
        return 结束时间;
    }

    public void set结束时间(String 结束时间) {
        this.结束时间 = 结束时间;
    }

    @Basic
    @Column(name = "负责人")
    public String get负责人() {
        return 负责人;
    }

    public void set负责人(String 负责人) {
        this.负责人 = 负责人;
    }

    @Basic
    @Column(name = "第一周落实结果")
    public String get第一周落实结果() {
        return 第一周落实结果;
    }

    public void set第一周落实结果(String 第一周落实结果) {
        this.第一周落实结果 = 第一周落实结果;
    }

    @Basic
    @Column(name = "第二周落实结果")
    public String get第二周落实结果() {
        return 第二周落实结果;
    }

    public void set第二周落实结果(String 第二周落实结果) {
        this.第二周落实结果 = 第二周落实结果;
    }

    @Basic
    @Column(name = "第三周落实结果")
    public String get第三周落实结果() {
        return 第三周落实结果;
    }

    public void set第三周落实结果(String 第三周落实结果) {
        this.第三周落实结果 = 第三周落实结果;
    }

    @Basic
    @Column(name = "第四周落实结果")
    public String get第四周落实结果() {
        return 第四周落实结果;
    }

    public void set第四周落实结果(String 第四周落实结果) {
        this.第四周落实结果 = 第四周落实结果;
    }

    @Basic
    @Column(name = "第五周落实结果")
    public String get第五周落实结果() {
        return 第五周落实结果;
    }

    public void set第五周落实结果(String 第五周落实结果) {
        this.第五周落实结果 = 第五周落实结果;
    }

    @Basic
    @Column(name = "更新时间")
    public Timestamp get更新时间() {
        return 更新时间;
    }

    public void set更新时间(Timestamp 更新时间) {
        this.更新时间 = 更新时间;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        跨部门方案Model model = (跨部门方案Model) o;

        if (编号 != null ? !编号.equals(model.编号) : model.编号 != null) return false;
        if (许可 != null ? !许可.equals(model.许可) : model.许可 != null) return false;
        if (年月 != null ? !年月.equals(model.年月) : model.年月 != null) return false;
        if (车型 != null ? !车型.equals(model.车型) : model.车型 != null) return false;
        if (项目 != null ? !项目.equals(model.项目) : model.项目 != null) return false;
        if (结果责任部门 != null ? !结果责任部门.equals(model.结果责任部门) : model.结果责任部门 != null) return false;
        if (行动提升方案 != null ? !行动提升方案.equals(model.行动提升方案) : model.行动提升方案 != null) return false;
        if (启用时间 != null ? !启用时间.equals(model.启用时间) : model.启用时间 != null) return false;
        if (结束时间 != null ? !结束时间.equals(model.结束时间) : model.结束时间 != null) return false;
        if (负责人 != null ? !负责人.equals(model.负责人) : model.负责人 != null) return false;
        if (第一周落实结果 != null ? !第一周落实结果.equals(model.第一周落实结果) : model.第一周落实结果 != null) return false;
        if (第二周落实结果 != null ? !第二周落实结果.equals(model.第二周落实结果) : model.第二周落实结果 != null) return false;
        if (第三周落实结果 != null ? !第三周落实结果.equals(model.第三周落实结果) : model.第三周落实结果 != null) return false;
        if (第四周落实结果 != null ? !第四周落实结果.equals(model.第四周落实结果) : model.第四周落实结果 != null) return false;
        if (第五周落实结果 != null ? !第五周落实结果.equals(model.第五周落实结果) : model.第五周落实结果 != null) return false;
        if (更新时间 != null ? !更新时间.equals(model.更新时间) : model.更新时间 != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = 编号 != null ? 编号.hashCode() : 0;
        result = 31 * result + (许可 != null ? 许可.hashCode() : 0);
        result = 31 * result + (年月 != null ? 年月.hashCode() : 0);
        result = 31 * result + (车型 != null ? 车型.hashCode() : 0);
        result = 31 * result + (项目 != null ? 项目.hashCode() : 0);
        result = 31 * result + (结果责任部门 != null ? 结果责任部门.hashCode() : 0);
        result = 31 * result + (行动提升方案 != null ? 行动提升方案.hashCode() : 0);
        result = 31 * result + (启用时间 != null ? 启用时间.hashCode() : 0);
        result = 31 * result + (结束时间 != null ? 结束时间.hashCode() : 0);
        result = 31 * result + (负责人 != null ? 负责人.hashCode() : 0);
        result = 31 * result + (第一周落实结果 != null ? 第一周落实结果.hashCode() : 0);
        result = 31 * result + (第二周落实结果 != null ? 第二周落实结果.hashCode() : 0);
        result = 31 * result + (第三周落实结果 != null ? 第三周落实结果.hashCode() : 0);
        result = 31 * result + (第四周落实结果 != null ? 第四周落实结果.hashCode() : 0);
        result = 31 * result + (第五周落实结果 != null ? 第五周落实结果.hashCode() : 0);
        result = 31 * result + (更新时间 != null ? 更新时间.hashCode() : 0);
        return result;
    }
}
